package dataStore;

import java.io.IOException;
import java.rmi.Remote; 
import java.rmi.RemoteException; 
import java.sql.SQLException;

import dataStruct.*;


public interface UserDataStoreApiInterface extends Remote{
	public FtpServerInfo get_ftp_server_info()throws RemoteException;

	public Boolean login(User user)  throws RemoteException, SQLException;

	public Boolean insert_user_file(String userName, String masterPath, String fileMd5)throws RemoteException, SQLException;
	public Boolean insert_file_info(String fileMd5, long fileSize)throws RemoteException, SQLException;

	public Boolean update_userCount_fileInfo(String fileMd5, long num)throws RemoteException, SQLException;
	
	public Boolean md5_exist(String fileMd5)throws RemoteException, SQLException;

	public Boolean  split_download(String ftpFilePath) throws RemoteException, SQLException;

	public FtpServerInfo get_ftpServerInfo_by_Path(String userName, String masterPath) throws RemoteException, SQLException, IOException;

	public FtpServerInfo wordcount_get_ftpServerInfo_by_Path(String userName, String masterPath) throws RemoteException, SQLException, IOException;

	public FtpServerInfo map(String userName, String masterPath) throws SQLException, IOException;
}
